home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Almathera Ten Pack 3: CDPD 3
/
Almathera Ten on Ten - Disc 3: CDPD3.iso
/
fish
/
001-100
/
001-025
/
024
/
modula-2
/
m2
/
executil.def
< prev
next >
Wrap
Text File
|
1995-03-17
|
2KB
|
52 lines
(********************************************************************************
Name : ExecUtil.DEF
Version : 1.0
Purpose : Additional NonLib Functions Provided in the C-Interface to Exec
Author : ms
Modified : 5.4.86 17:00 ms
Comments : Don't know if these are all functions and if their interfaces
are identical to the C-interfaces.
AllocString is private function to get nul-terminated strings.
********************************************************************************)
DEFINITION MODULE ExecUtil;
FROM Exec IMPORT MsgPortPtr, IOStdReq;
FROM SYSTEM IMPORT ADDRESS;
TYPE IOStdReqPtr = POINTER TO IOStdReq;
PROCEDURE AllocString(VAR p: ADDRESS; st: ARRAY OF CHAR);
(* Function: Allocate memory, copy the string and append a nul character.
Inputs: st: dynamic array of characters.
Result: p: Address of the string, or NIL if string was empty *)
PROCEDURE CreatePort(name: ARRAY OF CHAR; priority: INTEGER): MsgPortPtr;
(* Function: Allocate memory for a MsgPort structure,
initialize and add it to the system's MsgPort-List.
Inputs: name: String; priority: [-128..127]
Result: pointer to the new MsgPort, or NIL if failed *)
PROCEDURE CreateStdIO(msgPort: MsgPortPtr): IOStdReqPtr;
(* Function: Allocate memory for a IOStdReq structure and init.
Input: msgPort: pointer to MsgPort.
Result: pointer to the new IOStdReq, or NIL if failed *)
PROCEDURE DeallocString(VAR p: ADDRESS);
(* Function: Deallocate string allocated by AllocString.
Input: pointer to string, must be allocated by AllocString!
Result: none. *)
PROCEDURE DeletePort(VAR msgPort: MsgPortPtr);
(* Function: Deallocate MsgPort allocated by CreatePort.
Input: pointer to MsgPort, must be allocated by CreatePort!
Result: none. *)
PROCEDURE DeleteStdIO(VAR ioStdReq: IOStdReqPtr);
(* Function: Deallocate IOStdReq allocated by CreateStdIO.
Input: pointer to IOStdReq, must be allocated by CreateStdIO!
Result: none. *)
END ExecUtil.